IOS – OpenGL ES 图像色调分离噪点效果 GPUImagePosterizeFilter | 您所在的位置:网站首页 › es 数据格式 › IOS – OpenGL ES 图像色调分离噪点效果 GPUImagePosterizeFilter |
一.简介 GPUImage 共 125 个滤镜, 分为四类 1、Color adjustments : 31 filters , 颜色处理相关 2、Image processing : 40 filters , 图像处理相关. 3、Blending modes : 29 filters , 混合模式相关. 4、Visual effects : 25 filters , 视觉效果相关. GPUImagePosterizeFilter 属于 GPUImage 图像视觉效果相关,用来处理图像色调分离噪点效果。shader 源码如下: /******************************************************************************************/ //@Author:猿说编程 //@Blog(个人博客地址): www.codersrc.com //@File:IOS – OpenGL ES 图像色调分离噪点效果 GPUImagePosterizeFilter //@Time:2022/06/05 06:30 //@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! /******************************************************************************************/ #if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE NSString *const kGPUImagePosterizeFragmentShaderString = SHADER_STRING ( varying highp vec2 textureCoordinate; uniform sampler2D inputImageTexture; uniform highp float colorLevels; void main() { highp vec4 textureColor = texture2D(inputImageTexture, textureCoordinate); gl_FragColor = floor((textureColor * colorLevels) + vec4(0.5)) / colorLevels; } ); #else NSString *const kGPUImagePosterizeFragmentShaderString = SHADER_STRING ( varying vec2 textureCoordinate; uniform sampler2D inputImageTexture; uniform float colorLevels; void main() { vec4 textureColor = texture2D(inputImageTexture, textureCoordinate); gl_FragColor = floor((textureColor * colorLevels) + vec4(0.5)) / colorLevels; } ); #endif二.效果演示使用GPUImagePosterizeFilter 完成**图像色调分离噪点效果******,原图: 使用GPUImagePosterizeFilter 完成**图像色调分离噪点效果****** 三.源码下载OpenGL ES Demo 下载地址 : IOS – OpenGL ES 图像色调分离噪点效果 GPUImagePosterizeFilter |
CopyRight 2018-2019 实验室设备网 版权所有 |